import { CommonModule } from '@angular/common';
import { NgModule } from '@angular/core';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import {
  NzButtonModule,
  NzCascaderModule,
  NzCheckboxModule,
  NzDatePickerModule,
  NzFormModule,
  NzGridModule,
  NzIconModule,
  NzInputModule,
  NzInputNumberModule,
  NzRadioModule,
  NzSelectModule,
  NzSwitchModule,
  NzTabsModule,
  NzTimePickerModule,
  NzTreeSelectModule,
} from 'ng-zorro-antd';
import { EzCascaderComponent } from './components/ez-cascader';
import { EzCheckboxComponent } from './components/ez-checkbox';
import { EzDatepickerComponent } from './components/ez-datepicker';
import { EzFormComponent } from './components/ez-form';
import { EzFormGroupComponent } from './components/ez-form-group';
import { EzFormItemComponent } from './components/ez-form-item';
import { EzInputComponent } from './components/ez-input';
import { EzNumberComponent } from './components/ez-number/ez-number.component';
import { EzRadioComponent } from './components/ez-radio';
import { EzSelectComponent } from './components/ez-select';
import { EzSwitchComponent } from './components/ez-switch/ez-switch.component';
import { EzTextareaComponent } from './components/ez-textarea/ez-textarea.component';
import { EzTimepickerComponent } from './components/ez-timepicker/ez-timepicker.component';
import { EzTreeSelectComponent } from './components/ez-tree-select';

@NgModule({
  declarations: [
    EzFormComponent,
    EzFormGroupComponent,
    EzFormItemComponent,
    EzInputComponent,
    EzNumberComponent,
    EzSelectComponent,
    EzRadioComponent,
    EzCheckboxComponent,
    EzDatepickerComponent,
    EzTimepickerComponent,
    EzCascaderComponent,
    EzTextareaComponent,
    EzSwitchComponent,
    EzTreeSelectComponent,
  ],
  imports: [
    CommonModule,
    FormsModule,
    ReactiveFormsModule,
    NzFormModule,
    NzInputModule,
    NzInputNumberModule,
    NzSelectModule,
    NzRadioModule,
    NzCheckboxModule,
    NzDatePickerModule,
    NzTimePickerModule,
    NzCascaderModule,
    NzSwitchModule,
    NzTreeSelectModule,
    NzGridModule,
    NzButtonModule,
    NzIconModule,
    NzTabsModule,
  ],
  exports: [EzFormComponent],
})
export class EzFormModule {}
